The present invention relates to systems and methods for writing digital information on magnetic tapes, and more particularly to such systems and methods for generating and storing redundant information with the digital information on the tape.
A wide variety of storage devices has been developed for storing digital data or information generated by, and utilized in conjunction with, a digital computer. The selection of an appropriate storage device for a particular application is dictated by several factors including the cost per byte of information stored and the read/write response time. CMOS random access memory (RAM) provides the fastest response time, but has the highest cost per byte. At the other end of the spectrum, magnetic tape has the slowest response time, but the lowest cost per byte stored. In between these two extremes are a variety of disks, which provide response time and cost per byte in between those for RAM and tape. Such disks include hard disks, "Winchester" disks, and floppy disks.
All of these storage devices are subject to information loss or garbling, which often can be catastrophic. CMOS RAM can lose its information if a circuit malfunctions or if "noise" exists on a communication bus. Information can be lost on disks, tapes, and other magnetic surfaces by a magnetic field, physical damage to the magnetic surface, or noise on the communication bus. Other causes of information loss include software which "goes haywire" or programmer/operator error. This lost information is generally referred to as "erasures". It is therefore desirable and commonly accepted within the computer industry to provide cost effective "backup" for the various memory devices. "Backup" involves periodically storing the contents of a first storage device on a second storage device, so that the contents of the first storage device can be restored or recovered in the event of damage to, or information loss from, the first storage device.
Over the evolution of memory devices, disks have acquired the largest acceptance as striking an appropriate compromise between response time and cost per byte for the large volumes of information used in conjunction with a digital computer. A variety of magnetic tape "backup" systems have been developed on which the digital information on the disk can be periodically stored or backed up. Several particularly effective tape backups are those sold as Models 110 and 310 by Irwin Magnetic Systems, Inc., of Ann Arbor, Mich., the assignee of the present application. The structure and operation of some of these systems are illustrated in U.S. patent application Ser. No. 589,007, filed Mar. 13, 1984, by Chambors et al, entitled Method and Apparatus for Pre-Recording Tracking Information on Magnetic Media; U.S. Pat. No. 4,472,750, issued Sept. 18, 1984, to Klumpp et al., entitled Data Record with Pre-Recorded Transducer Positioning Signals, and System for Utilizing Same; and U.S. Pat. No. 4,468,712, issued Aug. 28, 1984, to Mueller et al., entitled Positioner Apparatus for Tape Recorder Heads. Although these systems constitute a significant advance and enjoy wide-spread commercial success today, the assignee of the present application has continually sought to improve the performance and efficiency of these backup systems.
In recording the backup information on the magnetic tape, it is desirable to provide redundant information to guard against loss of information on the magnetic tape. If a portion of the backup data information is lost for one reason or another, the lost information (or erasure) may be recoverable from the redundant information. One approach is to record two complete copies of the disk contents on the tape. Consequently, if one copy of the information is lost, the other copy can be consulted to complete the information restoration. This approach is wasteful of tape space and requires excessive time during backup. Typically, the computer cannot be utilized while the backup process is occurring; and therefore this approach is undesirably wasteful of time. A second approach is to calculate redundant information using an error-correction code. Redundant information calculated using this method typically requires less space than a complete second copy of the data information, while still enabling recovery from at least some loss of information. Typically, redundant information is stored in blocks physically separate from the data blocks; and a look-up table is provided on the tape to provide a mapping between the data blocks and the corresponding redundant blocks. This approach also has its drawbacks. If the look-up table is erased or otherwise lost, it is impossible to determine the correspondence between the data blocks and the redundant blocks required to read the redundant information and restore the data information to the disk. Additionally, both the writing and reading are undesirably slow because the mapping table must be repeatedly consulted and the various data and redundant blocks accessed at separate locations on the tape.